<!-- 搜索表单 -->
<template>
  <el-card shadow="never" >
    <el-form
      label-width="77px"
      class="ele-form-search"
      @keyup.enter.native="search"
      @submit.native.prevent
    >
      <el-row :gutter="24">
        <el-col :md="5" :sm="24">
          <el-form-item label="关键字:" label-width="58px" >
            <el-input clearable v-model="where.keyword" placeholder="支持订单编号糊查询" />
          </el-form-item>
        </el-col>
        <el-col  :md="5" :sm="24">
          <el-form-item label="单据类型:" label-width="72px">
            <el-select v-model="where.auitOrderType" clearable placeholder="请输入单据类型">
              <el-option v-for="(item, index) in statusEnums" :key="index" :label="item.Value" :value="item.Key" />
            </el-select>
          </el-form-item>
        </el-col>
        <el-col  :md="8" :sm="24">
          <el-form-item label="单据日期:" label-width="72px">
            <el-date-picker v-model="where.orderDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="daterange"
                range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" style="width: 225px;">
            </el-date-picker>
          </el-form-item>
        </el-col>
        <el-col  :md="5" :sm="24" >
          <div class="ele-form-actions">
            <el-button
              type="primary"
              icon="el-icon-search"
              class="ele-btn-icon"
              @click="search"
            >
              查询
            </el-button>
            <el-button @click="reset">重置</el-button>
          </div>
        </el-col>
      </el-row>
    </el-form>
  </el-card>
  </template>
 
  <script>
    const DEFAULT_WHERE = {
      keyword: '',    //关键字
      auitOrderType:'',
      orderDate:'',        
    };
    import { QueryPayBillTypeEnum } from '@/api/enummanger';
    export default {
      name: 'PaymentauitListSearch',
     
      data() {
        return {
          // 表单数据
          where: { ...DEFAULT_WHERE },
          statusEnums:[],
        };
      },
      //初始化数据
      created(){
       this.queryTypeEnums();
      },
  
      methods: {
  
        /* 搜索 */
        search() {
          let params = {
            pageindex: 1,
            conditions: [],
            orderBys: [{ sort: "createDate", order: 1, }],
        };

        //关键字查询
        if(this.where.keyword){
          params.conditions.push({
            key:"orderNo",
            operator: 1,
            value: this.where.keyword,
          });
        }

        //订单类型
        if(this.where.auitOrderType){
          params.conditions.push({
            key:"auitOrderType",
            operator: 0,
            value: this.where.auitOrderType,
          });
        }

        //订单日期
        if(this.where.orderDate){
          params.conditions.push({
            key:"orderDate",
            operator: 3,
            value:  this.where.orderDate[0] + " 00:00:00",
          });

          params.conditions.push({
            key:"orderDate",
            operator: 5,
            value:  this.where.orderDate[1] + " 23:59:59",
          });
        }

        this.$emit('search', params);

        },

        /*  重置 */
        reset() {
          this.where = { ...DEFAULT_WHERE };
          this.search();
        },

        /* 系统状态 */
        async queryTypeEnums(){
          let sysEnums = await QueryPayBillTypeEnum();
          sysEnums.map(e=>{
            this.statusEnums.push({Key:e.Key,Value:e.Value});
          });
        },
      }
    };
  </script>
  